package org.jsola.hr.dao;

import org.apache.ibatis.annotations.Param;
import org.jsola.hr.dto.AttendanceDedProgUpdateDTO;
import org.jsola.hr.entity.AttendanceDedDO;
import org.jsola.hr.entity.AttendanceDedProgDO;
import org.jsola.orm.mapper.IJsolaMapper;
import org.springframework.stereotype.Repository;

import java.util.List;


/**
 * @author zhr
 */
@Repository("hrAttendanceDedDAO")
public interface IAttendanceDedDAO extends IJsolaMapper<AttendanceDedDO> {

    /**
     * 查询扣款设置列表及子项
     * @param attendanceDedDO
     * @param siteId
     * @return
     */
    List<AttendanceDedDO> listWithItem(@Param("attendanceDedDO") AttendanceDedDO attendanceDedDO, @Param("siteId") String siteId);

    /**
     * 查询扣款方案列表及设置
     * @param attendanceDedProgDO
     * @param siteId
     * @return
     */
    List<AttendanceDedProgDO> progListWithItem(@Param("attendanceDedProgDO") AttendanceDedProgDO attendanceDedProgDO, @Param("siteId") String siteId);

    /**
     * 查询员工考勤扣款方案
     * @param attendanceDedProgUpdateDTO 查询条件
     * @param siteId 所属站点id
     * @return 员工考勤扣款方案列表
     */
    AttendanceDedProgDO selectRelationById(@Param("attendanceDedProgUpdateDTO") AttendanceDedProgUpdateDTO attendanceDedProgUpdateDTO, @Param("siteId") String siteId);
}

